


function GridCtrl(ctrlIdStr) {

    var _I = this;
    _I.ctrl = $('#' + ctrlIdStr);

    // Cargo los handlers de los collapse y expand

    // Encuentro las imagenes
    _I.ctrl.find('img[class^=imgExpandCollapse_]').click(function () {

        _I._handleImageExpandClick(this);

    });

//        alert(_I.ctrl.find('img[class^=imgExpandCollapse_]').length);

//        _I.ctrl.find('img[class^=imgExpandCollapse_]').each(function () {
//            alert($(this).attr('innerId'));
//         });


    this._handleImageExpandClick = function (element) {

        //alert($(element).attr('id'));
        // Hago un toggle de la tabla interior trExpansible_{nivel de profundidad}_{fila}
        var imgJq = $(element);
        var attrId = $(element).attr('innerId');
        var attrIdSplitted = attrId.split('_');
        var nivelDeProfundidad = attrIdSplitted[1];
        var fila = attrIdSplitted[2];

        var subtablaId = 'trExpansible_' + nivelDeProfundidad + '_' + fila;
        var subtablaJq = _I.ctrl.find('.' + subtablaId);

        if (subtablaJq.length != 0) {

            subtablaJq.slideToggle(300, function () {

                if (subtablaJq.is(':hidden')) {
                    imgJq.attr("src", "/Images/iconBig_blockcollapsed.png");
                }
                else {
                    imgJq.attr("src", "/Images/iconBig_blockexpanded.png");
                }
            });
        }

    };

};